package com.dhcc.DRGsHosp.core.domain;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

import javax.persistence.Column;

import org.openkoala.koala.commons.domain.KoalaLegacyEntity;

/**
 * 
 * @ClassName: IndexCal  
 * @Description ：指标计算查询参数实体    
 * @Date: 2017年5月25日 上午10:58:08  
 * @Author LiuHongJun 
 * @Version 2.5.0 DHC-DRGs
 */
public class IndexCal extends KoalaLegacyEntity {

	private static final long serialVersionUID = -2700241427681303048L;
	// 监测ID
	private String mrId;

	// Par科室代码
	private String pardepCode;

	// ParDRG代码
	private String pardrgCode;

	// Par专业组组代码
	private String pardepgroupCode;

	// 主诊组
	private String pargroupName;

	// MDC代码
	private String parmdcCode;

	// ADRG代码
	private String paradrgCode;


	// 分组器版本号
	private String verCode;
	
	//副主任医师
	private String protomedicus;
	
	//病区
	@Column(name = "PARWARD_CODE")
	private String parwardCode;
	
	//主治医师
	private String physician;
	// 增加resident By ruanshuli At 2017年2月24日 17:07:41                                                                     
	//
	private String resident;
	
	//人员类型
	private String pType = "0";
	
	//入组类型
	private String gType = "0";//0为全部病例, 1为入组病例
	
	//标杆年份
	private String stdYear;
	
	//外院标杆（医院编码+标杆年份）
	private String msCode;
	
	//分析对象
	private String monitorType;
	
	//指标代码
	private String quotaCode;
	
	//开始日期
	private String dateFrom;
	
	//结束日期
	private String dateTo;
	
	//管理目标年份
	private String manageYear;
	
    //分管科室
	private String deps = ""; //分管科室
	
	private String mdcs = "";//病组指标象限分析专用，多个mdc
	
	//专科代码
	private String specCode; //专科代码
  //历史数据
	
	private String isHistory; //历史数据查询
	
	//是否重点病组
	private String isKeyDisGroup="0"; // 是否是重点病组
	
	//是否重点病组
	private String isDifDisGroup="0"; // 是否是疑难病组
	
	//是否付费病组
	private String isPayGroup; // 是否是付费病组
	
	//携带sql
	private String sqlStr; //用来传递sql字符的拼接
	
	//比较类型
	private String compareType; //比较类型
	
	//比较类型
	private String scoreConfig; //综合得分配置字段
		
	private String groupType; // 病组类型 I：内科组  S:外科组 O：非手术室操作组
	// 增加getResident setResident getPhysician  setPhysician By ruanshuli At 2017年2月24日 17:07:41                                                                     
	
	private String mrType;//时间监测类型 m mc q
	
	private String isGetCc="1";//是否获取比较值1:是0：否
	
	private String isPerf="0";//是否绩效分析1:是0：否
	
	private String msType="0";//外部标杆类型 1：绩效标杆。2：外院标杆
	
	private String replaceQuotaCode;//用来代替指标code的传递，防止被恶意篡改
	
	private String type1;//备用11
	
	private String type2;//备用22
	
	private String type3;//会计期间 - 全年: 1  半年: 2  季度: 4 月度: 12
	
	private String typeOne;//备用1
	
	private String typeTwo;//备用2
	
	private String typeThree;//备用3
	
	private String typeFour;//备用4
	
	private String hcType;//基金类型（系统配置里配置的基金类型）
	
	private String groupByTime="0";//是否按时间段查询,默认为0：不按时间段，1：按时间段查询
	
	private Map<String,Object> quotaMap=new HashMap<>();//院内均值和正常指标代码的转换，如（AvgDRGCount==DRGCount）
	
	private String specHeader;//指定特异病例的上一级
	
	private String roleName;//角色名称
	
	private String userCode;//用户code
	
	//医师编码
	private String doctorCode;
	
	private String stdId; //标杆id
	
	private String verRegion; //分组方案
	
	private String hospCode ;//院区编码
	
	private String opeLevel ;//手术级别
	
	private String forecastYear ;//医保测算所预测的年份


	public String getCompareObj() {
		return compareObj;
	}

	public void setCompareObj(String compareObj) {
		this.compareObj = compareObj;
	}

	private String compareObj;
	
	public IndexCal(String mrId, String pardepCode, String pardrgCode, String pardepgroupCode, String pargroupName,
			String parmdcCode, String paradrgCode, String verCode, String protomedicus, String parwardCode,String physician, String resident, String pType, String gType, String stdYear,
			String msCode, String monitorType, String quotaCode, String dateFrom, String dateTo,
			String manageYear, String deps, String mdcs, String specCode, String isHistory, String isKeyDisGroup,
			String isPayGroup, String sqlStr, String compareType, String scoreConfig, String groupType, String mrType,
			String isGetCc, String isPerf, String msType, String replaceQuotaCode, String type1, String type2,
			String type3, String typeOne, String typeTwo, String typeThree, String typeFour, String hcType,
			String groupByTime, Map<String, Object> quotaMap, String specHeader, String roleName, String userCode,
			String doctorCode, String stdId,String verRegion,String hospCode,String opeLevel,String forecastYear) {
		super();
		this.mrId = mrId;
		this.pardepCode = pardepCode;
		this.pardrgCode = pardrgCode;
		this.pardepgroupCode = pardepgroupCode;
		this.pargroupName = pargroupName;
		this.parmdcCode = parmdcCode;
		this.paradrgCode = paradrgCode;
		this.verCode = verCode;
		this.protomedicus = protomedicus;
		this.parwardCode = parwardCode;
		this.physician = physician;
		this.resident = resident;
		this.pType = pType;
		this.gType = gType;
		this.stdYear = stdYear;
		this.msCode = msCode;
		this.monitorType = monitorType;
		this.quotaCode = quotaCode;
		this.dateFrom = dateFrom;
		this.dateTo = dateTo;
		this.manageYear = manageYear;
		this.deps = deps;
		this.mdcs = mdcs;
		this.specCode = specCode;
		this.isHistory = isHistory;
		this.isKeyDisGroup = isKeyDisGroup;
		this.isPayGroup = isPayGroup;
		this.sqlStr = sqlStr;
		this.compareType = compareType;
		this.scoreConfig = scoreConfig;
		this.groupType = groupType;
		this.mrType = mrType;
		this.isGetCc = isGetCc;
		this.isPerf = isPerf;
		this.msType = msType;
		this.replaceQuotaCode = replaceQuotaCode;
		this.type1 = type1;
		this.type2 = type2;
		this.type3 = type3;
		this.typeOne = typeOne;
		this.typeTwo = typeTwo;
		this.typeThree = typeThree;
		this.typeFour = typeFour;
		this.hcType = hcType;
		this.groupByTime = groupByTime;
		this.quotaMap = quotaMap;
		this.specHeader = specHeader;
		this.roleName = roleName;
		this.userCode = userCode;
		this.doctorCode = doctorCode;
		this.stdId = stdId;
		this.verRegion=verRegion;
		this.hospCode=hospCode;
		this.opeLevel=opeLevel;
		this.forecastYear=forecastYear;
	}

	
	public String getForecastYear() {
		return forecastYear;
	}


	public void setForecastYear(String forecastYear) {
		this.forecastYear = forecastYear;
	}


	public String getHospCode() {
		return hospCode;
	}


	public void setHospCode(String hospCode) {
		this.hospCode = hospCode;
	}


	public String getVerRegion() {
		return verRegion;
	}


	public void setVerRegion(String verRegion) {
		this.verRegion = verRegion;
	}


	public String getStdId() {
		return stdId;
	}


	public void setStdId(String stdId) {
		this.stdId = stdId;
	}




	public String getRoleName() {
		return roleName;
	}


	public void setRoleName(String roleName) {
		this.roleName = roleName;
	}
	


	/**  
	 * userCode.  
	 *  
	 * return  the userCode   
	 */
	public String getUserCode() {
		return userCode;
	}


	/**  
	 * userCode.  
	 *  
	 * param   userCode    the userCode to set   
	 */
	public void setUserCode(String userCode) {
		this.userCode = userCode;
	}


	public String getIsPayGroup() {
		return isPayGroup;
	}

	public void setIsPayGroup(String isPayGroup) {
		this.isPayGroup = isPayGroup;
	}


	public String getSpecHeader() {
		return specHeader;
	}


	public void setSpecHeader(String specHeader) {
		this.specHeader = specHeader;
	}


	public String getGroupByTime() {
		return groupByTime;
	}


	public void setGroupByTime(String groupByTime) {
		this.groupByTime = groupByTime;
	}


	public String getScoreConfig() {
		return scoreConfig;
	}


	public void setScoreConfig(String scoreConfig) {
		this.scoreConfig = scoreConfig;
	}


	public String getHcType() {
		return hcType;
	}


	public void setHcType(String hcType) {
		this.hcType = hcType;
	}


	public String getReplaceQuotaCode() {
		return replaceQuotaCode;
	}


	public void setReplaceQuotaCode(String replaceQuotaCode) {
		this.replaceQuotaCode = replaceQuotaCode;
	}


	public String getMsType() {
		return msType;
	}


	public void setMsType(String msType) {
		this.msType = msType;
	}


	public Map<String, Object> getQuotaMap() {
		return quotaMap;
	}


	public void setQuotaMap(Map<String, Object> quotaMap) {
		this.quotaMap = quotaMap;
	}


	public String getIsPerf() {
		return isPerf;
	}

	public void setIsPerf(String isPerf) {
		this.isPerf = isPerf;
	}

	public String getType2() {
		return type2;
	}

	public void setType2(String type2) {
		this.type2 = type2;
	}

	public String getType3() {
		return type3;
	}

	public void setType3(String type3) {
		this.type3 = type3;
	}

	public String getMrId() {
		return mrId;
	}

	public void setMrId(String mrId) {
		this.mrId = mrId;
	}

	public String getPardepCode() {
		return pardepCode;
	}

	public void setPardepCode(String pardepCode) {
		this.pardepCode = pardepCode;
	}

	public String getPardrgCode() {
		return pardrgCode;
	}

	public void setPardrgCode(String pardrgCode) {
		this.pardrgCode = pardrgCode;
	}

	public String getPardepgroupCode() {
		return pardepgroupCode;
	}

	public void setPardepgroupCode(String pardepgroupCode) {
		this.pardepgroupCode = pardepgroupCode;
	}


	public String getPargroupName() {
		return pargroupName;
	}

	public void setPargroupName(String pargroupName) {
		this.pargroupName = pargroupName;
	}

	public String getParmdcCode() {
		return parmdcCode;
	}

	public void setParmdcCode(String parmdcCode) {
		this.parmdcCode = parmdcCode;
	}

	public String getParadrgCode() {
		return paradrgCode;
	}

	public void setParadrgCode(String paradrgCode) {
		this.paradrgCode = paradrgCode;
	}

	public String getVerCode() {
		return verCode;
	}

	public void setVerCode(String verCode) {
		this.verCode = verCode;
	}

	public String getProtomedicus() {
		return protomedicus;
	}

	public void setProtomedicus(String protomedicus) {
		this.protomedicus = protomedicus;
	}

	public String getParwardCode() {
		return parwardCode;
	}

	public void setParwardCode(String parwardCode) {
		this.parwardCode = parwardCode;
	}

	public String getPhysician() {
		return physician;
	}

	public void setPhysician(String physician) {
		this.physician = physician;
	}

	public String getResident() {
		return resident;
	}

	public void setResident(String resident) {
		this.resident = resident;
	}

	public String getpType() {
		return pType;
	}

	public void setpType(String pType) {
		this.pType = pType;
	}

	public String getgType() {
		return gType;
	}


	public void setgType(String gType) {
		this.gType = gType;
	}


	public String getStdYear() {
		return stdYear;
	}

	public void setStdYear(String stdYear) {
		this.stdYear = stdYear;
	}


	public String getMsCode() {
		return msCode;
	}


	public void setMsCode(String msCode) {
		this.msCode = msCode;
	}


	public String getMonitorType() {
		return monitorType;
	}

	public void setMonitorType(String monitorType) {
		this.monitorType = monitorType;
	}

	public String getQuotaCode() {
		return quotaCode;
	}

	public void setQuotaCode(String quotaCode) {
		this.quotaCode = quotaCode;
	}

	public String getDateFrom() {
		return dateFrom;
	}

	public void setDateFrom(String dateFrom) {
		this.dateFrom = dateFrom;
	}

	public String getDateTo() {
		return dateTo;
	}

	public void setDateTo(String dateTo) {
		this.dateTo = dateTo;
	}

	public String getManageYear() {
		return manageYear;
	}

	public void setManageYear(String manageYear) {
		this.manageYear = manageYear;
	}

	public String getDeps() {
		return deps;
	}

	public void setDeps(String deps) {
		this.deps = deps;
	}
	
	public String getMdcs() {
		return mdcs;
	}

	public void setMdcs(String mdcs) {
		this.mdcs = mdcs;
	}
	
	public String getSpecCode() {
		return specCode;
	}

	public void setSpecCode(String specCode) {
		this.specCode = specCode;
	}

	public String getIsHistory() {
		return isHistory;
	}

	public void setIsHistory(String isHistory) {
		this.isHistory = isHistory;
	}

	public String getIsKeyDisGroup() {
		return isKeyDisGroup;
	}

	public void setIsKeyDisGroup(String isKeyDisGroup) {
		this.isKeyDisGroup = isKeyDisGroup;
	}

	public String getSqlStr() {
		return sqlStr;
	}

	public void setSqlStr(String sqlStr) {
		this.sqlStr = sqlStr;
	}

	public String getGroupType() {
		return groupType;
	}

	public void setGroupType(String groupType) {
		this.groupType = groupType;
	}

	public String getCompareType() {
		return compareType;
	}

	public void setCompareType(String compareType) {
		this.compareType = compareType;
	}

	public String getMrType() {
		return mrType;
	}

	public void setMrType(String mrType) {
		this.mrType = mrType;
	}

	
	public String getIsGetCc() {
		return isGetCc;
	}

	public void setIsGetCc(String isGetCc) {
		this.isGetCc = isGetCc;
	}

	
	public String getType1() {
		return type1;
	}

	public void setType1(String type1) {
		this.type1 = type1;
	}

	public String getTypeOne() {
		return typeOne;
	}

	public void setTypeOne(String typeOne) {
		this.typeOne = typeOne;
	}

	public String getTypeTwo() {
		return typeTwo;
	}

	public void setTypeTwo(String typeTwo) {
		this.typeTwo = typeTwo;
	}

	public String getTypeThree() {
		return typeThree;
	}

	public void setTypeThree(String typeThree) {
		this.typeThree = typeThree;
	}

	public String getTypeFour() {
		return typeFour;
	}

	public void setTypeFour(String typeFour) {
		this.typeFour = typeFour;
	}

	public String getDoctorCode() {
		return doctorCode;
	}


	public void setDoctorCode(String doctorCode) {
		this.doctorCode = doctorCode;
	}
	

	public String getOpeLevel() {
		return opeLevel;
	}


	public void setOpeLevel(String opeLevel) {
		this.opeLevel = opeLevel;
	}


	public String getIsDifDisGroup() {
		return isDifDisGroup;
	}


	public void setIsDifDisGroup(String isDifDisGroup) {
		this.isDifDisGroup = isDifDisGroup;
	}


	/**
 * 
 */
	public IndexCal() {
		super();
	}

	@Override
	public Serializable getId() {
		// TODO Auto-generated method stub
		return mrId;
	}

	@Override
	public String[] businessKeys() {
		// TODO Auto-generated method stub
		return null;
	}

	

	

}
